from django.db import models
from microerp.apps.base.models import Users


class Customer(models.Model):
    user = models.ForeignKey(Users, on_delete=models.CASCADE)  # 外键 对应客户所属的用户
    account_name = models.CharField(max_length=200)  # 必填字段 如果直接定义为公司名 代表为公司客户
    level = models.IntegerField()  # 客户级别
    phone = models.CharField(max_length=20)
    qq = models.CharField(max_length=60, null=True, blank=True)  # qq 号码
    qq_nickname = models.CharField(
        max_length=100, null=True, blank=True)  # qq 昵称
    weixin = models.CharField(max_length=60, null=True, blank=True)      # 微信号
    weixin_nickname = models.CharField(
        max_length=100, null=True, blank=True)  # 微信昵称

    # address
    province = models.CharField(max_length=200)  # 省份 + 城市 + 区域 + 街道
    city = models.CharField(max_length=200)  # 城市
    area = models.CharField(max_length=200)  # 区域
    street = models.CharField(max_length=200)  # 街道
    # 备注
    notes = models.TextField(max_length=500, null=True, blank=True)
    created_date = models.DateField()  # 添加的时间（实例化的时候 指定当前时间为创建时间）

    def __str__(self):
        return self.account_name

    def to_json(self):
        return dict(id=self.id, user=self.user.id, name=self.account_name, qq=self.qq, weixin=self.weixin)

    def name_dict(self):
        return dict(id=self.id, name=self.account_name, phone=self.phone, address=self.province + self.city + self.area + self.street)
